#ifndef INCLUDED_CHARACTER_H //if not , define
#define INCLUDED_CHARACTER_H
#include "SGE.h"
using namespace SGE;

class Map;

class Character
{
public:
	Character();
	~Character();

	void Load(); //initialize
	void Unload(); //terminate
	void Update(float deltaTime, const Map& map);
	void Render(const SVector2& viewOffset);

	void SetPosition(const SVector2& pos) {mPosition = pos;}
	const SVector2& GetPosition() const   { return mPosition;}
	SRect GetBoundingBox() const;/*{return SCircle (mPosition, 10.0f);}*/

private:
	SGE_Sprite mSprite;
	SVector2 mPosition;
};


#endif INCLUDED_CHARACTER_H



//OOP = Object Oriented Programming
//Ability to define user defined types
//types: properties or behaviours

//what does it contain? (variables)\
//what can we do with it? (functions & methods)

//In c++, type is created with "class" keyword

//what does a class provide?
//1. Encalsulation
//2. inheritance
//3. polymorphism

